﻿using System;
using TheGameClient.Processes;


namespace TheGameClient
{
	public class ProgramFileUndeleter : ProgramBase
	{
		public override ulong InterfaceId { get { return new Guid("B29933BA-BE0E-4396-B53F-0661D46AE4F4").ToLong(); } } 
		public override string ProcessName { get { return "File Undeleter"; }}
		protected override bool OnlyLocal { get { return false; } }

		protected override string SuccessStatus { get { return "Restore successful."; } }
		protected override string FailureStatus { get { return "Restore failed."; } }
		protected override string DropErrorStatus { get { return "Invalid drop target."; } }


		public override void Initialize()
		{
			Control.StatusText = "Drag onto file to be restored.";
			base.Initialize();
		}
	}

	public class ProgramFileUndeleterFactory : UiFactoryBase
	{
		public override InterfaceCategory UiCategory
		{
			get { return InterfaceCategory.Program; }
		}

		public override IProcess CreateProgram()
		{
			return new ProgramFileUndeleter();
		}
	}
}